[IA64] remove remaining asm warnings
authorawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Wed, 26 Apr 2006 18:50:42 +0000 (12:50 -0600)
committerawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Wed, 26 Apr 2006 18:50:42 +0000 (12:50 -0600)
Fix all remaining warnings generated by gas.
Enforce the no gas warnings by using --fatal-warnings gas flag.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
xen/arch/ia64/Rules.mk
xen/arch/ia64/linux-xen/entry.S
xen/arch/ia64/linux-xen/head.S
xen/arch/ia64/linux-xen/unaligned.c
xen/arch/ia64/vmx/vmx_ivt.S
xen/arch/ia64/vmx/vmx_phy_mode.c
xen/arch/ia64/xen/hyperprivop.S
xen/include/asm-ia64/config.h

index 073a43b456f779f7034abc8130990b8721cb68b6..d1a0f6ad35150ed78cd421a0c474624462a0d233 100644 (file)
@@ -9,7 +9,7 @@ ifneq ($(COMPILE_ARCH),$(TARGET_ARCH))
 CROSS_COMPILE ?= /usr/local/sp_env/v2.2.5/i686/bin/ia64-unknown-linux-
 endif
 AFLAGS  += -D__ASSEMBLY__ -nostdinc $(CPPFLAGS)
-AFLAGS  += -mconstant-gp
+AFLAGS  += -mconstant-gp -Wa,--fatal-warnings
 CPPFLAGS  += -I$(BASEDIR)/include -I$(BASEDIR)/include/asm-ia64        \
              -I$(BASEDIR)/include/asm-ia64/linux                       \
             -I$(BASEDIR)/include/asm-ia64/linux-xen                    \
@@ -17,7 +17,7 @@ CPPFLAGS  += -I$(BASEDIR)/include -I$(BASEDIR)/include/asm-ia64       \
              -I$(BASEDIR)/arch/ia64/linux -I$(BASEDIR)/arch/ia64/linux-xen
 
 CFLAGS  += -nostdinc -fno-builtin -fno-common -fno-strict-aliasing
-CFLAGS  += -mconstant-gp
+CFLAGS  += -mconstant-gp -Wa,--fatal-warnings
 #CFLAGS  += -O3                # -O3 over-inlines making debugging tough!
 CFLAGS  += -O2         # but no optimization causes compile errors!
 #CFLAGS  += -iwithprefix include -Wall -DMONITOR_BASE=$(MONITOR_BASE)
index 3ed178f55d8d52abc3570ad1220cb1013cf77589..d1b438b9bc8dab62803dfa2cf80aa240c51ec257 100644 (file)
@@ -899,6 +899,7 @@ GLOBAL_ENTRY(ia64_leave_kernel)
 #endif
 .work_processed_kernel:
 #ifdef XEN
+       ;;
 (pUStk) ssm psr.i
 (pUStk)    br.call.sptk.many b0=process_soft_irq
 (pUStk) rsm psr.i
index 9ba502e83177521378fe056057831647f98c9341..fbdbf47befdb89efcbc9d37bee46cc699f6f3ee7 100644 (file)
@@ -363,8 +363,8 @@ start_ap:
        ;;
        ssm psr.ic
        srlz.d
-       ;;
 #endif
+       ;;
        
 .load_current:
        // load the "current" pointer (r13) and ar.k6 with the current task
index c732ad523743ff6d8d2c980cf9096e475735c57c..800dc269526c1f0d32502e6503bcf5fcaf4a90cd 100644 (file)
@@ -921,8 +921,6 @@ setfpreg (unsigned long regnum, struct ia64_fpreg *fpval, struct pt_regs *regs)
                regs->f##reg.u.bits[1] = fpval->u.bits[1] ;     \
                break
        switch(regnum) {
-               CASE_FIXED_FP(0);
-               CASE_FIXED_FP(1);
                CASE_FIXED_FP(2);
                CASE_FIXED_FP(3);
                CASE_FIXED_FP(4);
index 2418fcf2f6cd8f882fca504f4ad25f28510b854f..81b3e646369af115bfa78761ed12333277739572 100644 (file)
@@ -379,7 +379,7 @@ END(vmx_dkey_miss)
 ENTRY(vmx_dirty_bit)
     VMX_DBG_FAULT(8)
        VMX_REFLECT(8)
-END(vmx_idirty_bit)
+END(vmx_dirty_bit)
 
        .org vmx_ia64_ivt+0x2400
 /////////////////////////////////////////////////////////////////////////////////////////
index e8677d01745f9aceda99d121c425082fa03238af..b0c58e88c99f8e016305d0985e46a49eb4f44f63 100644 (file)
@@ -193,29 +193,38 @@ vmx_load_all_rr(VCPU *vcpu)
                phy_rr.ve = 1;
 
                ia64_set_rr((VRN0 << VRN_SHIFT), phy_rr.rrval);
+               ia64_dv_serialize_data();
                phy_rr.rrval = vcpu->arch.metaphysical_rr4;
                //phy_rr.ps = PAGE_SHIFT;
                phy_rr.ve = 1;
 
                ia64_set_rr((VRN4 << VRN_SHIFT), phy_rr.rrval);
+               ia64_dv_serialize_data();
        } else {
                ia64_set_rr((VRN0 << VRN_SHIFT),
                             vrrtomrr(vcpu, VMX(vcpu, vrr[VRN0])));
+               ia64_dv_serialize_data();
                ia64_set_rr((VRN4 << VRN_SHIFT),
                             vrrtomrr(vcpu, VMX(vcpu, vrr[VRN4])));
+               ia64_dv_serialize_data();
        }
 
        /* rr567 will be postponed to last point when resuming back to guest */
        ia64_set_rr((VRN1 << VRN_SHIFT),
                     vrrtomrr(vcpu, VMX(vcpu, vrr[VRN1])));
+       ia64_dv_serialize_data();
        ia64_set_rr((VRN2 << VRN_SHIFT),
                     vrrtomrr(vcpu, VMX(vcpu, vrr[VRN2])));
+       ia64_dv_serialize_data();
        ia64_set_rr((VRN3 << VRN_SHIFT),
                     vrrtomrr(vcpu, VMX(vcpu, vrr[VRN3])));
+       ia64_dv_serialize_data();
        ia64_set_rr((VRN5 << VRN_SHIFT),
                     vrrtomrr(vcpu, VMX(vcpu, vrr[VRN5])));
+       ia64_dv_serialize_data();
        ia64_set_rr((VRN6 << VRN_SHIFT),
                     vrrtomrr(vcpu, VMX(vcpu, vrr[VRN6])));
+       ia64_dv_serialize_data();
        vmx_switch_rr7(vrrtomrr(vcpu,VMX(vcpu, vrr[VRN7])),
                        (void *)vcpu->domain->shared_info,
                        (void *)vcpu->arch.privregs,
index a38de12dd55979c6c3a4a43f8eee8ab770761e0f..f32264b1c7961d8a8867df438f031735b0d7fd05 100644 (file)
@@ -2087,7 +2087,6 @@ GLOBAL_ENTRY(fast_insert)
 (p6)   itc.d r22;;
 (p7)   itc.i r22;;
        dv_serialize_data
-       // FIXME: how do I make assembler warnings go away here?
        // vhpt_insert(r23=vaddr,r22=pte,r24=logps<<2)
        thash r28=r23
        or r26=1,r22;;
index 8371ecc4c083008f32188935ea819f7ffc75a995..b6db2f2adf7632de8a539166139bfbd6004abe12 100644 (file)
@@ -277,4 +277,8 @@ extern int ht_per_core;
 #define FORCE_CRASH    break.m 0;;
 #endif
 
+/* Allow .serialize.data/instruction in asm files.
+   Old as doesn't handle this.  */
+#define HAVE_SERIALIZE_DIRECTIVE
+
 #endif /* _IA64_CONFIG_H_ */